package com.zretc.dao;

import com.zretc.entity.Account;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @author何亮龙 用户dao层接口
 */
@Repository
public interface AccountMapper {
    /**
     * 添加用户注册信息
     *
     * @param account
     * @return int
     */

    int insertAccount(Account account);

    /**
     * 删除用户注册信息
     *
     * @param accountId
     * @return
     */
    int deleteAccountByAccountId(Integer accountId);

    /**
     * 根据用户名和密码查询记录
     *
     * @param accountName 用户名
     * @param accountPwd  密码
     * @return 对象
     */
    Account findByAccountNameAndPwd(@Param("accountName") String accountName, @Param("accountPwd") String accountPwd);

    /**
     * 根据用户名和用户编号查询记录
     *
     * @param accountName 用户名
     * @param accountId   用户编号
     * @return 对象
     */
    Account findByAccountName1(@Param("accountName") String accountName, @Param("accountId") String accountId);

    /**
     * 根据用户名查询记录
     *
     * @param accountName 用户名
     * @return 对象
     */
    Account findByAccountsName(@Param("accountName") String accountName);

    /**
     * 根据用用户编号查询记录
     * @param accountId
     * @return
     */
    Account findByAccountsId(@Param("accountId") Integer accountId);

    /**
     * 1.无条件查询
     * 2.根据用户名accountName模糊查询
     * 3.根据用户编号accountId查询记录
     *
     * @return 用户对象列表
     */
    List<Account> findAccountsList(Map<String, String> condition);
}
